A concurrency Mechanism for Sequential Eiffel

نویسندگان

  • Murat Karaorman
  • John L. Bruno
چکیده

This paper describes a set of classes designed to facilitate concurrent programming using the sequential object-oriented language EIFFEL. The design and implementation presented here is the application of a more general Concurrency Model we have built to introduce concurrency to sequential OOPLs. The model views concurrency as a well-deened, inheritable property of objects speciied in the class CONCURRENCY, and provides a methodology using inheritance to write concurrent object-orient applications. Key ideas involved in the methodology are: active objects, ex-tensibility of protocols, synchronization programming, data-driven synchronization with asynchronous message passing. The novel feature of our work is in its describing concurrency in the context of sequential programming and using a object-oriented design methodology to describe and implement it. We illustrate the usefulness and expressiveness of the concurrency mechanism by presenting examples and analyzing them. The ability to express powerful synchronization constraints as reusable software components emerges as a strong point of our implementation .

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

- 1 - Concurrency Annotations for Reusable Concurrent Software

Concurrency annotations are inserted into otherwise sequential object-oriented code, inducing a concurrent semantics that is very close to the original sequential semantics. This facilitates integrated engineering of sequential and concurrent software, in particular reuse of code across the boundary between concurrency and sequentiality. Concurrency annotations also blend well with inheritance,...

متن کامل

SCOOP An Investigation of Concurrency in Eiffel

Bertrand Meyer has defined an inter-object concurrency mechanism for the Eiffel language. The mechanism, SCOOP (Simple Concurrent Object-Oriented Programming), differs significantly from the concurrency mechanisms of Java, and many other objectoriented languages. This thesis presents the mechanism described by Meyer. Its properties are considered, and a model that describes SCOOP is derived. Fr...

متن کامل

Design and Implementation Issues for Object-Oriented Concurrency

This paper describes design and implementation issues for introducing concurrency to object-oriented programming. Designing a concurrency class library along with an object-oriented concurrent program design method is presented as the prefered way to extend an existing object-oriented language. A set of classes designed to facilitate concurrent programming using the sequential object-oriented l...

متن کامل

SECG: The SCOOP-to-Eiffel Code Generator

The Simple Concurrent Object-Oriented Programming (SCOOP) mechanism introduces inter-object concurrency to the Eiffel language, via addition of one new keyword, separate. We describe a general tool that takes a Eiffel program that uses the separate keyword and translates it into an Eiffel multi-threaded program that uses the Eiffel T HREAD class. The resulting code is thereafter compatible with...

متن کامل

The Jac System: Minimizing the Differences between Concurrent and Sequential Java Code

JAC is a Java extension for high-level concurrent programming, meant to hide the notions of threads and synchronization statements from the programmer. Putting into practice the concept of concurrency annotations suggested for Eiffel some time ago, one of JAC's main assets is its support for minimizing the differences between concurrent and sequential implementations of objects and computations...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1992